package com.ecole.mines.utils;

import java.util.List;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

import com.ecole.mines.emargement.R;
import com.ecole.mines.model.Eleve;

public class ListEleveAdapter extends ArrayAdapter<Eleve> {
	
	// Une liste de personnes
		private List<Eleve> listEleves;
		    	
		//Le contexte dans lequel est pr�sent notre adapter
		private Context mContext;
		    	
		//Un m�canisme pour gérer l'affichage graphique depuis un layout XML
		private LayoutInflater mInflater;
		
		public ListEleveAdapter(Context context, int resource, List<Eleve> items) {
		    super(context, resource, items);
		    this.mContext=context;
		    this.listEleves=items;
		    this.mInflater= (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
		}
		
		public int getCount() 
		{
			return listEleves.size();
		}
		
		public Eleve getItem(int position) 
		{
			return listEleves.get(position);
		}

		public long getItemId(int position) 
		{
			return position;
		}
		
		public static class ViewHolder
		{
			TextView nomEleve;
		}
		
		@Override
		public View getView(int position, View convertView, ViewGroup parent) {

			ViewHolder holder;
			// Si la ligne n'existe pas -> On créée la ligne
			if (convertView == null)
			{
				convertView = this.mInflater.inflate(R.layout.liste,parent,false);
				holder = new ViewHolder();
				// On affecte les views
				holder.nomEleve = (TextView)  convertView.findViewById(R.id.texteLigne);
				convertView.setTag(holder);
			}
			// Sinon on récupère la ligne qui est en mémoire
			else
				holder = (ViewHolder) convertView.getTag();
	 
			// On récupére l'objet courant	 
			// On met à jour nos views
			holder.nomEleve.setText(this.listEleves.get(position).getNom()+" "+this.listEleves.get(position).getPrenom());
	 
			return (convertView);
		}

}
